Computing Homotopic Shortest Paths Efficiently
نویسندگان
چکیده
Geometric shortest paths are a major topic in computational geometry; see the survey paper by Mitchell [12]. A shortest path between two points in a simple polygon can be found in linear time using the “funnel” algorithm of Chazelle [3] and Lee and Preparata [10]. A more general problem is to find a shortest path between two points in a polygonal domain. In this case the “rubber band” solution is not unique, or, to put it another way, different paths may have different homotopy types. When the homotopy type of the solution is not specified, there are two main approaches, the visibility graph approach, and the continuous Dijkstra (or shortest path map) approach [12]. In this paper, we address the problem of finding a shortest path when the homotopy type is specified. Colloquially, we have a “sketch” of how the path should wind its way among the obstacles, and we want to pull the path tight to shorten it. Homotopic shortest paths are used in VLSI routing [4, 8, 11]. A related problem is that of drawing graphs with “fat edges”: given a planar weighted graph G, find a planar drawing such that all the edges are drawn as thickly as possible and proportional to the corresponding edge weights. Duncan et al. [5] and Efrat et al. [7] present an O(kn + n) algorithm for this problem, where n is the number of edges and k is the maximum of their input and output complexities. Hershberger and Snoeyink [9] give an algorithm for the homotopic shortest path problem. Their algorithm assumes a triangulation of size n of the polygonal domain, and finds a shortest path homotopic to a given path of k edges in time linear in k plus the number of triangles (with repetition) visited by the input path. This can be nk in the worst case, and our aim is to reduce it when output size permits. Cabello et al. [2] consider the related problem of testing if two given paths are homotopically equivalent. Our original work [6] was done independently of theirs and the idea of the first step of the algorithms is the same. The current presentation of our work incorporates their more efficient implementation of this idea. We now define homotopy, and give a precise description of our problem. Let α, β : [0, 1] −→ R be two continuous curves parameterized by arc-length. Then α and β are homotopic with respect to a set of obstacles V ⊆ R if α can be continuously deformed into β while avoiding the obstacles; more formally, if there exists a continuous function h : [0, 1]× [0, 1] → R such that: 1. h(0, t) = α(t) and h(1, t) = β(t), for 0 ≤ t ≤ 1
منابع مشابه
Computing homotopic shortest paths in the plane
We address the problem of computing homotopic shortest paths in presence of obstacles in the plane. The problems on homotopy of the paths received attention very recently [3, 8]. We present two output-sensitive algorithms, for simple paths and non-simple paths. The algorithm for simple paths improves the previous algorithm [8]. The algorithm for non-simple paths achieves O(log n) time per outpu...
متن کاملComputing shortest homotopic cycles on polyhedral surfaces with hyperbolic uniformization metric
The problem of computing shortest homotopic cycles on a surface has various applications in computational geometry and graphics. In general, shortest homotopic cycles are not unique, and local shortening algorithms can become stuck in local minima. For surfaces with negative Euler characteristic that can be given a hyperbolic uniformization metric, however, we show that they are unique and can ...
متن کاملComputing shortest words via shortest loops on hyperbolic surfaces
Given a loop on a surface, its homotopy class can be specified as a word consisting of letters representing the homotopy group generators. One of the interesting problems is how to compute the shortest word for a given loop. This is an NP-hard problem in general. However, for a closed surface that allows a hyperbolic metric and is equipped with a canonical set of fundamental group generators, t...
متن کاملComputing Interesting Topological Features
Many questions about homotopy are provably hard or even unsolvable in general. However, in specific settings, it is possible to efficiently test homotopyequivalence or compute shortest cycles with prescribed homotopy. We focus on computing such “interesting” topological features in three settings. The first two results are about cycles on surfaces; the third is about classes of homotopies in IR...
متن کاملComputing the K Shortest Paths: A New Algorithm and an Experimental Comparison
A new algorithm to compute the K shortest paths (in order of increasing length) between a given pair of nodes in a digraph with n nodes and m arcs is presented. The algorithm recursively and efficiently solves a set of equations which generalize the Bellman equations for the (single) shortest path problem and allows a straightforward implementation. After the shortest path from the initial node...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2002